﻿using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace EnqueteMobile.Repository.Database.Model
{
    [Table("ControleComunicacao")]
    public class ControleComunicacao
    {
        [Key]
        [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
        public long Id { get; set; }

        public Nullable<long> IdRemoto { get; set; }
        
        public Nullable<int> IdOperacao { get; set; }
        
        [Required]
        public long DispositivoMovel { get; set; }
        
        public Nullable<DateTime> DataHoraSaida { get; set; }
        
        public Nullable<DateTime> DataHoraEntrada { get; set; }
        
        [MaxLength(8000)]
        public String ConteudoPacoteSaida { get; set; }
        
        [MaxLength(8000)]
        public String ConteudoPacoteEntrada { get; set; }
        
        [Required]
        public Boolean PossuiRetorno { get; set; }
        
        [MaxLength(50)]
        public String ChaveUsuario { get; set; }
        
        [Required]
        public int SentidoComunicacao { get; set; }
        
        public Boolean Processado { get; set; }
        
        [MaxLength(500)]
        public String MensagemErro { get; set; }
    }
}